/*----------------------------------------------------------------------------------------
*
*  Copyright 2019, Gao Hai Hui, <fromzeropoint@126.com>.  All rights reserved.
*  https://gitee.com/helloworldghh/xoskit.git
*  Use of this source code is governed by a MIT license
*  that can be found in the License file.
*
----------------------------------------------------------------------------------------*/
#include "../import/head.h"
#include "../macro/head.h"
#include "../impl/head.h"
#include "after.h"

namespace xos_filter_a
{
    //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    // 

    static after::ITEM_DATA xos_item_data;

    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 

    after::after()
    {
        init_data();
    }

    after::~after()
    {
    }

    ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    // public method

    int after::get_xos_item_data( ITEM_DATA*& item_ptr )
    {
        int ret = 0;
        xos_item_data.set_container( mgr::container() );
        item_ptr = &xos_item_data;
        return ret;
    }

    ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    // 

    http::i_servlet::enumRet after::proc( http::i_task * pTask )
    {
        http::i_servlet::enumRet ret = http::i_servlet::RET_DONE;

        xos_box::i_string * pStrTime = mgr::container()->box()->string();
        xos::i_time * pTime = mgr::container()->xos()->tm();
        {
            pTime->get_time();
            pTime->get_time_name_ymdhms( pStrTime );
            LOG4( "this is in xos_filter_a::after, time = %s", pStrTime->get( 0, 0 ) );
        }
        xos_stl::release_interface( pStrTime );
        xos_stl::release_interface( pTime );

        return ret;
    }

    ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    // 

    int after::init_data()
    {
        int ret = 0;
        return ret;
    }

    ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    // 

    int after::init()
    {
        int ret = 0;
        return ret;
    }

    int after::term()
    {
        int ret = 0;
        init_data();
        return ret;
    }


} // xos_filter_a
